<?  
  set_time_limit(4500);
  /* Se asegura que el archivo es incluido por el index */
    defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );  
	/* Cuando se hace el include del archivo automaticamente crea un objeto y lo guarda en una variable temporal */
		$this->oTmpObject = new Menu_exe( $this );
    
	class Menu_exe extends Exe
	{
	function Menu_exe( &$oModule )
		{
			$this->Exe( $oModule );
		}
		// AGREGAR_MENU
		function insert()
		{
			// Convierte a variables los datos del Formulario asociado a la accion
			$oForm = $this->oModule->loadClass( 'Menu_frm' );
			extract( $oForm->getFieldArray() );
			// Busca el siguiente id
			$ncMenu      = $this->oDatabase->nextKey("gtMenu", "ncMenu"  );
			$this->oDatabase->insert("gtMenu"
								,"ncMenu", $ncMenu
								,"ncMenuPadre", $ncMenuPadre
								,"cdMenu", $cdMenu
								,"cAccion", $cAccion
								,"cParametros", $cParametros
								,"cDescripcion", $cDescripcion
								,"bActivo", $bActivo );
			$oForm->reset();
		}
		
		// ELIMINAR_MENU
		function delete()
		{
			$ncMenu = getParam( 'ncMenu' );
			$this->oDatabase->delete("gtMenu","ncMenu", $ncMenu );
		}
		
		// MODIFICAR_MENU
		function update()
		{
			// Convierte a variables los datos del Formulario asociado a la accion
			$oForm = $this->oModule->loadClass( 'Menu_frm' );
			extract( $oForm->getFieldArray() );
			$this->oDatabase->update("gtMenu"
								,"ncMenuPadre", $ncMenuPadre
								,"cdMenu", $cdMenu
								,"cAccion", $cAccion
								,"cParametros", $cParametros
								,"cDescripcion", $cDescripcion
								,"bActivo", $bActivo
								,"WHERE"
								 ,"ncMenu", $ncMenu);
			$oForm->reset();
		}
	}
?>